package com.aiwiown.face.domain.orc;

import com.aiwiown.face.ApiObject;
import com.aiwiown.face.domain.params.ApiParamType;
import com.aiwiown.face.internal.mapping.ApiField;

import java.io.File;

/**
 * @ClassName : OrcDriverLicenseModel face++
 * @Description :
 * @Author : dbin0123
 */
public class OCRDriverLicenseV2Model extends ApiObject {
    private static final long serialVersionUID = -6266627943115321224L;

    /**
     * 图片的URL
     */
    @ApiField("image_url")
    private String imageUrl;

    /**
     * 图片文件
     */
    @ApiField(value = "image_file", paramType = ApiParamType.FILE)
    private File imageFile;

    @ApiField("image_file")
    private byte[] byteFile;

    /**
     * 当传入照片输出OCR结果时，是否同时返回置信度，可选参数为0和1。
     * 默认此参数是0，即不返回置信度。
     * 当经由api_key判断用户为已付费的正式用户，且此参数设定为1时，
     * 分别对每部分OCR识别结果同时输出置信度，并同时输出正本/副本的置信度。
     */
    @ApiField("return_score")
    private Integer returnScore;

    /**
     * 使用该API的快速识别模式还是完备识别模式，可选参数为fast和complete
     * 默认此参数是complete，即完备识别模式。
     * 快速识别模式只可识别驾照正本(main sheet)正面；完备识别模式支持识别驾照正本和副本。
     * (注：新加参数）
     */
    @ApiField("mode")
    private String mode;

    public String getImageUrl() {
        return imageUrl;
    }

    public void setImageUrl(String imageUrl) {
        this.imageUrl = imageUrl;
    }

    public File getImageFile() {
        return imageFile;
    }

    public void setImageFile(File imageFile) {
        this.imageFile = imageFile;
    }

    public byte[] getByteFile() {
        return byteFile;
    }

    public void setByteFile(byte[] byteFile) {
        this.byteFile = byteFile;
    }

    public Integer getReturnScore() {
        return returnScore;
    }

    public void setReturnScore(Integer returnScore) {
        this.returnScore = returnScore;
    }

    public String getMode() {
        return mode;
    }

    public void setMode(String mode) {
        this.mode = mode;
    }
}
